In order to charaterize the bursting dynamics of the links in the temporal network (see Notebook 4) the methods in GDa.stats.bursting module can be used.

In particular, we do so for binary arrays of activations that, similar to spike-trains, are binary with the value one used to represent the activation of a certain link. For each activation sequence we characterize the following statistics: link avg. activation time (mu), total act. time relative to task stage time (mu_tot), CV (mean activation time over its std).

This procedure requires that we threshold the values of coherence in the temporal network. The thresholds are defined for each link (relative) or commonly for all links (absolute) based on a arbritary quartile of its coherence distribution q. Since this thresholding procedure can affect the results we also study how the threshold level influnces the statistics measured. It is also important to note that since we may compare different trial types (ODRT, int. fixation, blocked fixation) the threshold is computed commonly for all the trials.

Analysis of the burst dynamics of each link for each frequency band and stage of the ODRT.

Loading session

Coherence computation

When instantiated, the temporal network object will load the recording info for the monkey, date, and session specified as well as the super tensor; The trial type and the behavioral response can also be specified.

The super-tensor has dimensions [Number of pairs, Number of frequency bands, Number of trials, Time]. For Lucy the frequency bands analysed are:

The temporal_network class can also be instantiated by setting threshold as True this will automatically threshold the super-tensor (computed for all trial types independent on how the trial type parameter was set).

Distribution of the average coherence value per task-stage and band

Analysis for default threshold parameter

In the cells bellow we perform the burstness analysis for the default thresholding parameter.

To use the Python package igraph to compute network theory quantities it is necessary to instantiate a Graph object, to do so we have to provide an adjacency matrix to the Graph method. Note that the super tensor is the edge representation of the network, but we can convert it to an adjacency matrix by calling the methdo convert_to_adjacency in the class temporal_network. This method will create the variable A inside the object.

Euclidean distances between nodes

Mask to track observations within a task-stage

Since tha analysis is performed for each period of the experiment o have to crate masks to acess values for a specific period (baseline, cue, delay or match)

Visualizing the super tensor

Now let's take a look on the binary super-tensor by plotting its first 10 trials.

We can also check the super-tensor averaged over trials, which gives an idea of the probability of a certain link being active at a certain moment of the trial.

Plotting average for trials with similar delay durations

Trial-by-trial variability and ERP

Here we show the link-averaged time-series of activations for each trials, its median and 5% and 95% quartiles.

We can also project each trial time series in the 2D space using T-SNE to better visualize how the trials are distributed. For this let's use 50 trials.

Detecting bursts (example)

Finding the length of burst durations

Finding the length of burst durations for segments of the spike-train using a mask

Finding the length of burst durations for segments of the spike-train using a mask dropping the bursts in the edge between masks

CV distribution per band and task stage (default threshold)

Next we compute the three quantities of interest: the mean burst duration ($\mu$), the normalized total active time ($\mu_\rm{tot}$), and (CV). Bellow we briefly describe how each of those measurements in an example scenario.

Consider the activation series for the edge $p$ composed by nodes $i$ and $j$ ($p=\{i,j\}$) and trial $T$: $A_{p}^{T}=\{00011100001100111111\}$.

  1. the mean burst duration ($\mu$): In the example above $A_{p}^{T}$ has three activation bursts of sizes $3$, $2$, and $6$, therefore $\mu$ = mean(3,2,6) ~ 3.7 a.u. and standard deviantion $\sigma_{\mu}$ = std(3,2,6) ~ 1.7 a.u.;

  2. the normalized total active time ($\mu_\rm{tot}$): The total active time is given by: $len(A_{p}^{T})^{-1}\sum A_{p}^{T}$. If a specif stage $s$ of the experiment is analysed for all trials we consider the concatenated activations series: $A_{p}(s)$, if $n(s)^T$ is the number of observations in stage $s$ at trial $T$ then: $\mu_\rm{tot} = (\sum_{T}n(s)^T)^{-1}\sum A_{p}(s)$;

  3. Burstness CV: The burstness CV is computed from step one as: CV = $\sigma_{\mu}/\mu$.

Spatial distribution of the statistics

Effect of threshold variation

Stats distribution (q=0.3)

Stats distribution (q=0.8)

Stage specific reconfiguration of network dynamics

Burstness vs active time (default threshold)

Burstiness vs electrode distance (default threshold)

Dependence on threshold (gif)

CV vs. Mean burst duration
CV vs. Fraction of active time
CV vs. channel euclidean distance

Meta-connectivity analysis

Plotting on clustering order

Trimer Strength

Cross-frequency coupling

Comparison with fixation

Comparison with failed trials